AOS CLI
Use the aos command-line interface to spawn and connect to processes on HyperBEAM mainnet.
Understanding Legacy vs. HyperBEAM
AO is currently maintaining two networks during the transition to HyperBEAM:
- Legacy Network (aos): The current stable network that most existing processes run on
- HyperBEAM Mainnet (hyper-aos): The new high-performance network being built out
HyperAOS represents the future direction of AOS on HyperBEAM, offering improved performance and new capabilities.
Installing aos
The primary tool for interacting with AO and developing processes is aos, a command-line interface and development environment.
npm i -g https://get_ao.arweave.netpnpm add -g https://get_ao.arweave.net# Bun is not supported yet
# bun install -g https://get_ao.arweave.netHyperBEAM Process (aos)
Enter aos into the cli to spawn a process on the HyperBEAM network (default). Create a Legacynet processes with the --legacy flag during creation.
aos --legacyConnecting to a Specific HyperBEAM Node
You can also connect directly to a specific HyperBEAM node:
aos --url "https://push.forward.computer" myMainnetProcessThis connects you to an interactive Lua environment running within a process on the HyperBEAM network at the specified URL.
Running a Local HyperBEAM Node
If you are running HyperBEAM locally and want to use that node when booting up aos, you must first start your local node with the genesis_wasm profile:
rebar3 as genesis_wasm shellThen, you can connect aos to it:
aos --url "http://localhost:8734" myLocalProcessUntil aos is fully HyperBEAM native, the genesis_wasm profile is required to run a local Compute Unit (CU) for executing aos.
Interacting with Mainnet Processes
Note on Blocking Calls
Blocking message patterns, such as Receive and ao.send().receive(), are not available when running aos against a HyperBEAM process. HyperBEAM processes do not support the underlying wasm modules required for this functionality. You should rely on asynchronous patterns using handlers instead.